home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 February: Tool Chest / Apple Developer CD Series Tool Chest February 1996 (Apple Computer)(1996).iso / Tool Chest / Development Tools & Languages / Macintosh Common Lisp Related / interfaces / PInterface Translator / PInterfaces / Resources.p < prev    next >
Encoding:
Text File  |  1993-09-16  |  5.1 KB  |  167 lines  |  [TEXT/MPS ]

  1. {
  2. Created: Sunday, January 6, 1991 at 11:05 PM
  3.     Resources.p
  4.     Pascal Interface to the Macintosh Libraries
  5.  
  6.         Copyright Apple Computer, Inc.    1985-1990
  7.         All rights reserved
  8. }
  9.  
  10.  
  11. {$IFC UNDEFINED UsingIncludes}
  12. {$SETC UsingIncludes := 0}
  13. {$ENDC}
  14.  
  15. {$IFC NOT UsingIncludes}
  16.     UNIT Resources;
  17.     INTERFACE
  18. {$ENDC}
  19.  
  20. {$IFC UNDEFINED UsingResources}
  21. {$SETC UsingResources := 1}
  22.  
  23. {$I+}
  24. {$SETC ResourcesIncludes := UsingIncludes}
  25. {$SETC UsingIncludes := 1}
  26. {$IFC UNDEFINED UsingTypes}
  27. {$I $$Shell(PInterfaces)Types.p}
  28. {$ENDC}
  29. {$IFC UNDEFINED UsingFiles}
  30. {$I $$Shell(PInterfaces)Files.p}
  31. {$ENDC}
  32. {$SETC UsingIncludes := ResourcesIncludes}
  33.  
  34. CONST
  35. resSysHeap = 64;    {System or application heap?}
  36. resPurgeable = 32;  {Purgeable resource?}
  37. resLocked = 16;     {Load it in locked?}
  38. resProtected = 8;   {Protected?}
  39. resPreload = 4;     {Load in on OpenResFile?}
  40. resChanged = 2;     {Resource changed?}
  41. mapReadOnly = 128;  {Resource file read-only}
  42. mapCompact = 64;    {Compact resource file}
  43. mapChanged = 32;    {Write map out at updat}
  44.  
  45. { Values for setting RomMapInsert and TmpResLoad }
  46. mapTrue = $FFFF;    {insert ROM map w/ TmpResLoad = TRUE.}
  47. mapFalse = $FF00;   {insert ROM map w/ TmpResLoad = FALSE.}
  48.  
  49. FUNCTION InitResources: INTEGER;
  50.     INLINE $A995;
  51. PROCEDURE RsrcZoneInit;
  52.     INLINE $A996;
  53. PROCEDURE CloseResFile(refNum: INTEGER);
  54.     INLINE $A99A;
  55. FUNCTION ResError: INTEGER;
  56.     INLINE $A9AF;
  57. FUNCTION CurResFile: INTEGER;
  58.     INLINE $A994;
  59. FUNCTION HomeResFile(theResource: Handle): INTEGER;
  60.     INLINE $A9A4;
  61. PROCEDURE CreateResFile(fileName: Str255);
  62.     INLINE $A9B1;
  63. FUNCTION OpenResFile(fileName: Str255): INTEGER;
  64.     INLINE $A997;
  65. PROCEDURE UseResFile(refNum: INTEGER);
  66.     INLINE $A998;
  67. FUNCTION CountTypes: INTEGER;
  68.     INLINE $A99E;
  69. FUNCTION Count1Types: INTEGER;
  70.     INLINE $A81C;
  71. PROCEDURE GetIndType(VAR theType: ResType;index: INTEGER);
  72.     INLINE $A99F;
  73. PROCEDURE Get1IndType(VAR theType: ResType;index: INTEGER);
  74.     INLINE $A80F;
  75. PROCEDURE SetResLoad(load: BOOLEAN);
  76.     INLINE $A99B;
  77. FUNCTION CountResources(theType: ResType): INTEGER;
  78.     INLINE $A99C;
  79. FUNCTION Count1Resources(theType: ResType): INTEGER;
  80.     INLINE $A80D;
  81. FUNCTION GetIndResource(theType: ResType;index: INTEGER): Handle;
  82.     INLINE $A99D;
  83. FUNCTION Get1IndResource(theType: ResType;index: INTEGER): Handle;
  84.     INLINE $A80E;
  85. FUNCTION GetResource(theType: ResType;theID: INTEGER): Handle;
  86.     INLINE $A9A0;
  87. FUNCTION Get1Resource(theType: ResType;theID: INTEGER): Handle;
  88.     INLINE $A81F;
  89. FUNCTION GetNamedResource(theType: ResType;name: Str255): Handle;
  90.     INLINE $A9A1;
  91. FUNCTION Get1NamedResource(theType: ResType;name: Str255): Handle;
  92.     INLINE $A820;
  93. PROCEDURE LoadResource(theResource: Handle);
  94.     INLINE $A9A2;
  95. PROCEDURE ReleaseResource(theResource: Handle);
  96.     INLINE $A9A3;
  97. PROCEDURE DetachResource(theResource: Handle);
  98.     INLINE $A992;
  99. FUNCTION UniqueID(theType: ResType): INTEGER;
  100.     INLINE $A9C1;
  101. FUNCTION Unique1ID(theType: ResType): INTEGER;
  102.     INLINE $A810;
  103. FUNCTION GetResAttrs(theResource: Handle): INTEGER;
  104.     INLINE $A9A6;
  105. PROCEDURE GetResInfo(theResource: Handle;VAR theID: INTEGER;VAR theType: ResType;
  106.     VAR name: Str255);
  107.     INLINE $A9A8;
  108. PROCEDURE SetResInfo(theResource: Handle;theID: INTEGER;name: Str255);
  109.     INLINE $A9A9;
  110. PROCEDURE AddResource(theResource: Handle;theType: ResType;theID: INTEGER;
  111.     name: Str255);
  112.     INLINE $A9AB;
  113. FUNCTION SizeResource(theResource: Handle): LONGINT;
  114.     INLINE $A9A5;
  115. FUNCTION MaxSizeRsrc(theResource: Handle): LONGINT;
  116.     INLINE $A821;
  117. FUNCTION RsrcMapEntry(theResource: Handle): LONGINT;
  118.     INLINE $A9C5;
  119. PROCEDURE SetResAttrs(theResource: Handle;attrs: INTEGER);
  120.     INLINE $A9A7;
  121. PROCEDURE ChangedResource(theResource: Handle);
  122.     INLINE $A9AA;
  123. PROCEDURE RmveResource(theResource: Handle);
  124.     INLINE $A9AD;
  125. PROCEDURE UpdateResFile(refNum: INTEGER);
  126.     INLINE $A999;
  127. PROCEDURE WriteResource(theResource: Handle);
  128.     INLINE $A9B0;
  129. PROCEDURE SetResPurge(install: BOOLEAN);
  130.     INLINE $A993;
  131. FUNCTION GetResFileAttrs(refNum: INTEGER): INTEGER;
  132.     INLINE $A9F6;
  133. PROCEDURE SetResFileAttrs(refNum: INTEGER;attrs: INTEGER);
  134.     INLINE $A9F7;
  135. FUNCTION OpenRFPerm(fileName: Str255;vRefNum: INTEGER;permission: SignedByte): INTEGER;
  136.     INLINE $A9C4;
  137. FUNCTION RGetResource(theType: ResType;theID: INTEGER): Handle;
  138.     INLINE $A80C;
  139. FUNCTION HOpenResFile(vRefNum: INTEGER;dirID: LONGINT;fileName: Str255;
  140.     permission: SignedByte): INTEGER;
  141. PROCEDURE HCreateResFile(vRefNum: INTEGER;dirID: LONGINT;fileName: Str255);
  142.  
  143. FUNCTION FSpOpenResFile(spec: FSSpec;permission: SignedByte): INTEGER;
  144.     INLINE $303C,$000D,$AA52;
  145. PROCEDURE FSpCreateResFile(spec: FSSpec;creator: OSType;fileType: OSType;
  146.     scriptTag: ScriptCode);
  147.     INLINE $303C,$000E,$AA52;
  148.  
  149. {  partial resource calls  }
  150. PROCEDURE ReadPartialResource(theResource: Handle;offset: LONGINT;buffer: UNIV Ptr;
  151.     count: LONGINT);
  152.     INLINE $7001,$A822;
  153. PROCEDURE WritePartialResource(theResource: Handle;offset: LONGINT;buffer: UNIV Ptr;
  154.     count: LONGINT);
  155.     INLINE $7002,$A822;
  156. PROCEDURE SetResourceSize(theResource: Handle;newSize: LONGINT);
  157.     INLINE $7003,$A822;
  158.  
  159.  
  160.  
  161. {$ENDC}    { UsingResources }
  162.  
  163. {$IFC NOT UsingIncludes}
  164.     END.
  165. {$ENDC}
  166.  
  167.